package com.tedu.api.thread;

/**
 * 匿名内部类的方式：Thread创建模式，Runnable的创建模式
 * javaOOP---封装---内部类：成员内部类，方法内部类，匿名内部类，静态内部类
 *
 * 匿名内部类：针对接口以及抽象类，使用匿名内部类创建
 *           【对象只实例化[创建]一次对象】
 * 语法：对象  引用=new   对象() {匿名内部类};
 */
public class TR {
    public static void main(String[] args) {
    /*    //1.使用匿名内部类：完成Thread类创建
        Thread t1=new Thread(){
            //匿名内部类--直接调用方法
            public void run() {
                for (int i=0;i<1000;i++){
                    System.out.println("one楞one楞");
                }
            }
        };
        t1.start();*/
        //***********************************************************

        //Java 封装线程--->Thread t1=new Thread();   t1.start();
        //   Thread   ----内嵌入Runnable   -->  new Runnable
        //   Thread优点：使用方便，但是结构不适合线程创建
        Thread t1=new Thread(()->{for(int i=0;i<1000;i++){
            System.out.println("one楞one楞");
        }} );
        //2.启动 匿名内部类---完成线程创建
        t1.start();

       /* //2.启动匿名内部类---完成线程创建
        Thread t2=new Thread(new Runnable() {
            public void run() {
                for (int i=0;i<1000;i++){
                    System.out.println("Runnable匿名内部类写法");
                }
            }
        });*/
        //使用Lambda表达式   Runnable真正线程类操作--功能run方法
        Runnable r=()->{for (int i=0;i<1000;i++){
            System.out.println("Runnable匿名内部类写法");
        }};
        Thread t2=new Thread(r);
        //3.启动线程
        t2.start();
    }
}
